<?php
class Composicioncaja extends AppModel {
	var $displayField = 'total';
	var $name = 'Composicioncaja';
	var $belongsTo = array(
		'Estado'=>array('className' => 'Estado','foreignKey' => 'estado_id'),
		'Usuario'=>array('className' => 'Usuario','foreignKey' => 'usuario_id'),
	);
	var $validate = array(
		'id'=>array('notEmpty'=>array('rule'=>'notEmpty','last'=>true,'menssage'=>'Verifique los datos enviados')),
		'usuario_id'=>array('notEmpty'=>array('rule'=>'notEmpty','last'=>true,'menssage'=>'Verifique los datos enviados')),
		'estado_id'=>array('notEmpty'=>array('rule'=>'notEmpty','last'=>true,'menssage'=>'Verifique los datos enviados')),
		'bill200'=>array('numeric'=>array('rule' =>'numeric','allowEmpty'=>true,'last'=>true,'message'=>'Bill200: El ingreso es solo de numeros')),
		'bill100'=>array('numeric'=>array('rule' =>'numeric','allowEmpty'=>true,'last'=>true,'message'=>'Bill100: El ingreso es solo de numeros')),
		'bill50'=>array('numeric'=>array('rule' =>'numeric','allowEmpty'=>true,'last'=>true,'message'=>'Bill50: El ingreso es solo de numeros')),
		'bill20'=>array('numeric'=>array('rule' =>'numeric','allowEmpty'=>true,'last'=>true,'message'=>'Bill20: El ingreso es solo de numeros')),
		'bill10'=>array('numeric'=>array('rule' =>'numeric','allowEmpty'=>true,'last'=>true,'message'=>'Bill10: El ingreso es solo de numeros')),
		'monedas'=>array('numeric'=>array('rule' =>'numeric','allowEmpty'=>true,'last'=>true,'message'=>'monedas: El ingreso es solo de numeros')),
		'chequespc'=>array('numeric'=>array('rule' =>'numeric','allowEmpty'=>true,'last'=>true,'message'=>'chequespc: El ingreso es solo de numeros')),
		'valesper'=>array('numeric'=>array('rule' =>'numeric','allowEmpty'=>true,'last'=>true,'message'=>'valesper: El ingreso es solo de numeros')),
		'otros'=>array('numeric'=>array('rule' =>'numeric','allowEmpty'=>true,'last'=>true,'message'=>'otros: El ingreso es solo de numeros')),
		'total'=>array('numeric'=>array('rule' =>'numeric','allowEmpty'=>true,'last'=>true,'message'=>'total: El ingreso es solo de numeros')),
		
	);
	function visualizarError($error){if(empty($error)){	return 	array('respuesta'=>true, 'mensaje'=>"El registro a sido actualizado");}	foreach($error as $value){ return array('respuesta'=>false, 'mensaje'=>$value);}}	
	
	function countComposicioncaja($params){return $this->find('count',$params);}
	function dataComposicioncaja($params){return $this->find('all',$params);}
	
	function getDatosComposicioncaja($data){
        $qry = "
        SELECT 
				SUBSTRING(Composicioncaja.fecha::text,1,4) AS \"Composicioncaja__PERIODO\",
				SUBSTRING(Composicioncaja.fecha::text,6,2) AS \"Composicioncaja__MES\", 
				sum(total)  AS \"Composicioncaja__monto\" , Composicioncaja.organizacion_id  AS \"Composicioncaja__organizacion_id\"
				  FROM Composicioncajas AS Composicioncaja 
				  WHERE Composicioncaja.estado_id = 1 "; 
        
        		if ($data['Estadisticascaja']['periodo_id']!='')
        		{
        			$qry = $qry . " AND SUBSTRING(Composicioncaja.fecha::text,1,4) = '" .  $data['Estadisticascaja']['periodo_id'] . "'"; 
        		}       			
        
				  
				  $qry = $qry . " GROUP BY \"Composicioncaja__PERIODO\", \"Composicioncaja__MES\", Composicioncaja.organizacion_id				
				  ORDER BY \"Composicioncaja__PERIODO\",\"Composicioncaja__MES\"";
        $query = $this->query($qry);
        return $query;
    }
}